home *** CD-ROM | disk | FTP | other *** search
/ Languguage OS 2 / Languguage OS II Version 10-94 (Knowledge Media)(1994).ISO / language / embedded / m68k / cc68k.arc / READ.ME < prev    next >
Text File  |  1989-11-05  |  6KB  |  156 lines

  1. October 1989
  2. ============
  3.  
  4.     I have further modified the compiler to generate symbols and
  5. syntax compatible with Motorola's FREEWARE 68332 assembler;  it is also
  6. compatible with Motorola's 68K family macro assembler as released for
  7. MS-DOS. I used Microsoft Quick C to compile and debug it, and the Quick
  8. C make file (CC68K.MAK) is included.  The original comments of the
  9. author (Matthew Brandt) and the modifier (Ron Fox) are included.
  10.  
  11.     This compiler generates 68000 assembly code, and as such it
  12. doesn't use any of the extra addressing modes or instructions supported
  13. by the 68332. It is meant to be used as a quick and dirty tool to
  14. evaluate Motorola's 68000 microprocessors;  it can be used to generate
  15. production code but I must emphasize that this tool is NOT a supported
  16. product of Motorola Inc.  If you are developing a product and you need a
  17. C compiler for the 68K family, please purchase the official Motorola C
  18. compiler and macro assembler package, since the price is reasonable and
  19. it is supported by Motorola.
  20.  
  21. Scott Howard
  22. Field Applications Engineer
  23. Motorola Semiconductor Products, Canada
  24.  
  25. =======================================================================
  26.  
  27. This archive contains a modified version of Matthew Brandt's C68K
  28. compiler. Where Brandt's compiler generated UNIX assembler code, this
  29. version generates code compatible with MASM, Motorola's resident
  30. Assembler.
  31.   The current version has been revised and quite a few bugs fixed.  It
  32. should be more robust than the previous version. The following is the
  33. copyright notice which appeared in the original version:
  34.  
  35. /*
  36.  *    68000 C compiler
  37.  *
  38.  *    Copyright 1984, 1985, 1986 Matthew Brandt.
  39.  *  all commercial rights reserved.
  40.  *
  41.  *    This compiler is intended as an instructive tool for personal use. Any
  42.  *    use for profit without the written consent of the author is prohibited.
  43.  *
  44.  *    This compiler may be distributed freely for non-commercial use as long
  45.  *    as this notice stays intact. Please forward any enhancements or question
  46. s
  47.  *    to:
  48.  *
  49.  *        Matthew Brandt
  50.  *        Box 920337
  51.  *        Norcross, Ga 30092
  52.  */
  53.  
  54.   I performed the original modifications using VMS C, and have therefore
  55. had to edit each module to stick a <> around the stdio.h #include statements.
  56. I have not tested this compiler on an IBM compatible.  Note that the original
  57. documentation for the compiler states that there will be compilation warnings
  58. when building the compiler.  This is still true, due to some mixed mode
  59. int vs pointer assignments.  Take note large memory model users.
  60.  
  61. Bugs/restrictions in the original have not been fixed, these include:
  62. 1. Errors involving char parameters to functions
  63. 2. Limits on the size of functions due to the fact that a function is
  64.    completely parsed before code is generated.
  65. 3. No support for floats, however float declarations do not produce errors.
  66. 4. Preprocessor support is limited to #include and symbol replacement #define
  67.    directives, that is #define's without arguments.
  68. 5. There is no real run time library supplied.  This includes a lack of the
  69.    'standard' useful functions such as printf, scanf and so on.
  70.  
  71. To rebuild:
  72.   Compile all .C files except sieve.c which is a test program.
  73.   Link these together with the run time library of your C compiler.
  74.   Name the output file C68M.  Assemble LIB.SA with the Motorola 68000
  75.   assembler.
  76.  
  77. To use:
  78. Type:
  79.    C68M  file.c
  80.  
  81. Where file.c is the name of the file you want to compile.
  82. The file file.lis and file.sa will be produced. The .lis file is a listing,
  83. and the .sa file is valid assembler input for MASM.  It should be linked
  84. with MLINK and whatever other modules you wish to include.
  85.  
  86. Ron Fox
  87. NSCL
  88. Michigan State University
  89. East Lansing, MI 48824-1321
  90.  
  91. The following is the original READ.ME file for C68K as distributed by
  92. Matthew Brandt, the original author.  Documentation above supersedes the
  93. information in the file below.
  94.  
  95. ----------------------------------- Original READ.ME ----------------------
  96.  
  97.  
  98. NOTICE:
  99.  
  100.     68000 C compiler
  101.  
  102.     Copyright 1984, 1985, 1986 Matthew Brandt.
  103.     all commercial rights reserved.
  104.  
  105.     This compiler is intended as an instructive tool for personal use. Any
  106.     use for profit without the written consent of the author is prohibited.
  107.  
  108.     This compiler may be distributed freely for non-commercial use as long
  109.     as this notice stays intact. Please forward any enhancements or questions
  110.     to:
  111.  
  112.         Matthew Brandt
  113.         Box 920337
  114.         Norcross, Ga 30092
  115.  
  116. This compiler is an optimizing C compiler for the Motorola 68000 processor.
  117. It has successfully compiled itself on UNIX system V running on a Motorola
  118. VME-10. Since this code was written for a machine with long integers it may
  119. exhibit some irregularity when dealing with long integers on the IBM-PC.
  120. The author makes no guarantees. This is not meant as a serious developement
  121. tool although it could, with little work, be made into one. The bugs and
  122. limitations of this compiler are listed below:
  123.  
  124.     -Although you may declare floating point types the code generator does
  125.         not know how to deal with them. They should therefore be avoided.
  126.     
  127.     -The preprocessor does not support arguments to #define'd macros or
  128.         any of #line #ifdef... etc. Only #include and #define are supported.
  129.     
  130.     -Function arguments declared as char may not work properly. Declare
  131.         them as int.
  132.     
  133.     -The size of functions is slightly limited due to the fact that the
  134.         entire function is parsed before any code is generated.
  135.     
  136.     -The output of the compiler is in the UNIX 68000 assembler format.
  137.  
  138. To run the compiler type "cc68 sieve.c". This will compile the program sieve
  139. and produce two files; sieve.lis is a source listing with a symbol type
  140. reference; sieve.s is the 68000 assembly language produced.
  141.  
  142. The file lib.s is the assembly source for some runtime support routines
  143. which must be loaded with the final code. The is no standard runtime library
  144. support.
  145.  
  146. The compiler can be compiled by microsoft C version 3.0 or higher. MSC will
  147. issue lots of warnings but they can be ignored. The file make.bat will
  148. rebuild the compiler if MSC is available.
  149.  
  150. If you wish to make commercial use of all or part of this package please
  151. contact me at the above address or (404)662-0366. Any voluntary contribution
  152. from non-commercial users will be greatly appreciated but is by no means
  153. necessary. enjoy...
  154.                                         Matt Brandt
  155.  
  156.